package com.aiti.lulian.entity;

import com.aiti.base.core.base.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;
import java.util.Map;


/**
 * @author WongMZ
 * @createDate 2024-05-28
 * @description: 鲁链全球_供需对接会详情表
 */
@Data
@Builder
@TableName("lulian_docking_meeting_details")
@NoArgsConstructor
@AllArgsConstructor
public class LuLianDockingMeetingDetails extends BaseEntity {

    @TableId(value = "base_id",type = IdType.ASSIGN_UUID)
    private String baseId;

    /** 活动时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" ,timezone = "GMT+8")
    private Date meetingDate;

    /** 格式化活动时间后的字符串值 */
    @TableField(exist = false)
    private String meetingDateStr;

    /** 二维码地址 */
    private String wxQrCodeUrl;

    /** 活动名称 */
    private String activityName;

    /** 活动地址 */
    private String activityAddress;

    /** 省 */
    private String province;

    /** 市 */
    private String city;

    /** 区 */
    private String county;

    /** 上传平台首页方图 */
    private String indexPic;

    /** 上传活动入口海报 */
    private String activityEnterPic;

    /** 上传会场海报背景图 */
    private String backgroundPic;

    /** 活动介绍 */
    private String activityDesc;

    /** 活动联系人 */
    private String linkMan;

    /** 联系人手机号 */
    private String linkPhone;

    /** 创建时间 */
    private Date baseCreateTime;

    /** 更新时间 */
    private Date baseUpdateTime;

    /** 创建人 */
    private String baseCreateBy;

    /** 更新人 */
    private String baseUpdateBy;

    /** 主办方 */
    private String sponsor;

    /** 是否需要审核 (0:需要;1:不需要)*/
    private String examine;

    /** 是否开直播(0:不开；1:开) */
    private String xcVideo;

    /** 负责单位 */
    private String headUnit;

    /** 龙头企业 */
    private String topCompany;

    /** 产业链 */
    private String industryChain;

    /** 活动形式 */
    private String activityModality;

    /** 是否显示企业信息 */
    private String showCompanyInfo;

    /** 直播时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private Date liveTime;

    /** 报名开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" ,timezone = "GMT+8")
    private Date entryStartTime;

    /** 报名结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date entryEndTime;

    /** 活动时间 */
    @TableField(exist = false)
    private List<LuLianDockingMeetingAgenda> agendaList;

    /** 格式化时间后的活动时间列表 */
    @TableField(exist = false)
    private List<Map<String, String>> formatAgendaList;

    /** 返回前端的活动时间 */
    @TableField(exist = false)
    private List<Map<String, Object>> respDates;

    //会义状态(0:审核中;1:报名中;2:进行中;3:已完成)
    private String meetingStatus;

    /** 驳回原因 */
    @TableField("bh_yy")
    private String bhYy;

    /** 活动发布人 */
    @TableField("publisher")
    private String publisher;

    /** 直播间ID */
    @TableField(exist = false)
    private String roomId;

    /** 返回前端该活动的报名状态（供应商） */
    @TableField(exist = false)
    private String supplierSignUpStatus;

    /** 返回前端该活动的报名状态（采购商） */
    @TableField(exist = false)
    private String purchaserSignUpStatus;

    /** 返回前端报名该活动的报名ID（供应商） */
    @TableField(exist = false)
    private String supplierSignUpId;

    /** 返回前端报名该活动的报名ID（采购商） */
    @TableField(exist = false)
    private String purchaserSignUpId;

    /** 导出举办地点 */
    @TableField(exist = false)
    private String exportAddress;

    //是否是政府名片使用，1为是
    private String govFlag;
}